import type { NativeStackNavigationProp } from "@react-navigation/native-stack";

// TODO: 想办法自动生成
export type StackRouteList = {
  "/customer-service": undefined;
  "/demo/reanimated-hello-world": undefined;
  "/demo/reanimated-animating-styles": undefined;
  "/demo/reanimated-animating-props": undefined;
  "/home": undefined;
  "/orders": { orderId: number | undefined | null };
  "/tutorials": undefined;
  "/settings": undefined;
  "/youth-mode": undefined;
}

export type StackNavigationProp = NativeStackNavigationProp<StackRouteList>;

export type HomeRouteList = {
  "/home/main": undefined;
  "/home/view": undefined;
  "/home/profile": undefined;
}

export type HomeNavigationProp = NativeStackNavigationProp<HomeRouteList & StackRouteList> & {
  openDrawer: () => void; // see https://reactnavigation.org/docs/drawer-navigator#helpers
  closeDrawer: () => void;
};
